#ifndef _Rover_H_
#define _Rover_H_

#include <string>
#include <vector>
#include "DisplayDevice.h"

using namespace std;

class Rover 
{
    private:
        string roverId, roverName, roverType;
        vector<DisplayDevice*> ddVec;
    public:
        Rover();
        Rover(string roverId, string roverName, string roverType);
        ~Rover();

        void setId(string id);
        string getId();

        void setName(string name);
        string getName();

        void setType(string type);
        string getType();

        void setDisplayDevices(vector<DisplayDevice*> ddVec);
        vector<DisplayDevice*> getDisplayDevices();

        virtual void init() = 0;

        virtual void move(double d) = 0;
        
        virtual void rotate(double angle) = 0;
};


#endif